Q: éÑÇÕÅAÉ}ÉãÉ`ÉvÉçÉZÉbÉTìãç⁄Çà Macintosh ÉRÉìÉsÉÖÅ[É^ÇéùǡǃǢNjÇ∑ÅBÉvÉçÉZÉbÉTÇà 1 ǬÇàÍéûìIÇ…ñ≥å¯Ç…ǵǃÅAÉVÉìÉOÉãÉvÉçÉZÉbÉTÇÃä¬ã´Ç≈é©ï™Çà Mac OS X êªïiÇÉeÉXÉgǵǃǛÇΩÇ¢ÇÃÇ≈Ç∑Ç™ÅADZÇÍÇÕÇ«ÇÃÇÊǧDžÇ∑ÇÍÇŒâ¬î\Ç≈ǵÇÂǧǩÅH
A: Open
Firmware ÇéùǬÇ∑Ç◊ǃÇà Power Macintosh ÉVÉXÉeÉÄÇ≈ÇÕÅAÉvÉçÉZÉbÉTÇÃêîÇ™é¿ç€Ç…ë∂ç›Ç∑ÇÈÇÊÇËLJè≠ǻǢÇΔÉVÉXÉeÉÄÇ…êMÇ∂Ç≥ÇπÇÈÇÊǧDžê›íËÇïœçXÇ≈Ç´Ç‹Ç∑ÅBMac OS X Çà Terminal ÉAÉvÉäÉPÅ[ÉVÉáÉìÇégǡǃÅAnvram ÉRÉ}ÉìÉhÇì¸óÕǵǃÉVÉXÉeÉÄÇÉäÉuÅ[ÉgÇ≈Ç´Ç‹Ç∑ÅBÇ‹ÇΩÇÕÅAOpen Firmware ä¬ã´ì‡Ç≈óòópÇ≈Ç´ÇÈï˚ñ@LJdžÇËÇ‹Ç∑ÅB
Mac OS X Çà Terminal ÉAÉvÉäÉPÅ[ÉVÉáÉìÇégǡǃÉvÉçÉZÉbÉTÇÃêîÇ 1 Ç…ê›íË
éüÇÃéwé¶ÇÕÅAMac OS X ÇÃèÍçáÇ…ÇÃÇ›óLå¯Ç≈Ç∑ÅBÉvÉçÉZÉbÉTÇÃêîÇïœçXÇ∑ÇÈÇ…ÇÕ root ÇÃÉpÉXÉèÅ[ÉhÇ‹ÇΩÇÕä«óùé“ÇÃÉpÉXÉèÅ[ÉhÇímǡǃǢÇÈïKóvǙdžÇËÇ‹Ç∑ÅBê›íËïœêîÅAboot-args Çê›íËÇ∑ÇÈÇ…ÇÕÅATerminal ÉAÉvÉäÉPÅ[ÉVÉáÉìÇégǡǃ nvram ÉRÉ}ÉìÉhÇî≠çsǵNjÇ∑ÅBéüÇÃéËèáÇ…è]ǢNjÇ∑ÅB
éËèá 1ÅFTerminal ÉAÉvÉäÉPÅ[ÉVÉáÉìÇãNìÆÇµÇ‹Ç∑ÅBTerminal ÉAÉvÉäÉPÅ[ÉVÉáÉìÇÕ /Applications/Utilities/Terminal DždžÇËÇ‹Ç∑ÅB
éËèá 2ÅFboot-args ÇÃåªç›ÇÃê›íËÇå©ÇÈÇ…ÇÕÅAéüÇÃÉRÉ}ÉìÉhÇì¸óÕǵNjÇ∑ÅB
éËèá 3ÅFéüÇÃÉRÉ}ÉìÉhÇì¸óÕǵNjÇ∑ÅB
% sudo nvram boot-args="cpus=1"
|
boot-args ÇÃåªç›ÇÃílÇà€éùÇ∑ÇÈèÍçáÇÕÅAǪÇÃílÇçƒì¸óÕÇ∑ÇÈïKóvǙdžÇËÇ‹Ç∑ÅBÇΩÇΔǶnjÅAéËèá 2 ÇÃåãâ Ç™éüÇÃÇÊǧDžǻǡÇΩÇΔǵNjÇ∑ÅB
ǪÇÃèÍçáÅAnvram ÉRÉ}ÉìÉhÇéüÇÃÇÊǧDžì¸óÕǵNjÇ∑ÅB
% sudo nvram boot-args="debug=0x4 cpus=1"
|
éËèá 4ÅFÉpÉXÉèÅ[ÉhÇóvãÅÇ≥ÇÍÇΩÇÁÅAroot ÇÃÉpÉXÉèÅ[ÉhÇ‹ÇΩÇÕä«óùé“ÇÃÉpÉXÉèÅ[ÉhÇì¸óÕǵNjÇ∑ÅB
éËèá 5ÅFÉVÉXÉeÉÄÇçƒãNìÆÇµÇ‹Ç∑ÅB
à»è„ÇÃÉRÉ}ÉìÉhÇ…ÇÊÇËÅAïsäˆî≠ê´ RAMÅiNVRAMÅjÇ…ÅAOpen Firmware ÇÃê›íËïœêîÅA"boot-args" Ç™ê›íËÇ≥ÇÍÇ‹Ç∑ÅBDZÇÃDZÇΔÇÕÅAÉVÉXÉeÉÄÇçƒãNìÆÇµÇƒÇ‡ê›íËÇ™à€éùÇ≥ÇÍÇÈDZÇΔÇà”ñ°ÇµÇ‹Ç∑ÅB
çƒãNìÆÇ∑ÇÈëOÇ…ê›íËÇïœçXǵÇΩèÍçáÇÕÅAå„Ç…çsÇ¡ÇΩê›íËÇ™ëOÇÃê›íËÇè„èëǴǵNjÇ∑ÅBboot-args ÇÃÉXÉyÉãÇä‘à·Ç¶ÇΩÇΔǵǃLJÅAåxçêÇÕèoÇ∏ÅAêVǵǢÉGÉìÉgÉäÇ™ÅiǮǪÇÁÇ≠ñ≥à”ñ°Ç…ÅjNVRAM Ç…çÏÇÁÇÍÅAégÇÌÇÍÇÈÉvÉçÉZÉbÉTÇÃêîÇÕçƒãNìÆå„LJïœÇÌÇËÇ‹ÇπÇÒÅB
èdóvÇ»íçà”ì_ - ÉvÉçÉZÉbÉTÇÃêîÇÕÅAè≠Ç»Ç≠ÇΔLJ 1 Ǭà»è„Ç≈Ç»ÇØÇÍnjǻÇÁÇ∏ÅAÇ‹ÇΩÉVÉXÉeÉÄÇ…é¿ç€Ç…ë∂ç›ÇµÇƒÇ¢ÇÈêîÇâzǶǃéwíËÇ∑ÇÈDZÇΔÇÕÇ≈Ç´Ç‹ÇπÇÒÅBïsê≥Ç»ÉvÉçÉZÉbÉTÇÃêîÇéwíËÇ∑ÇÍÇŒÅAÉVÉXÉeÉÄÇ™ÅAÉuÅ[ÉgèàóùÇÃç≈íÜÇ…í‚é~Ç∑ÇÈèÍçáLJdžÇËÇ‹Ç∑ÅBDZÇÍÇ™ãNDZǡÇΩèÍçáÇÕÅAéüêflÇà Åucpus ê›íËÇÃÉNÉäÉAÅvÇ≈ê‡ñæÇ∑ÇÈ PRAM ÉNÉäÉAÇé¿çsÇ∑ÇÈïKóvǙdžÇËÇ‹Ç∑ÅB
Open Firmware DžǮǢǃLJ boot-args ê›íËïœêîÇê›íËÇ≈Ç´Ç‹Ç∑ÅBDZÇÃÉIÉvÉVÉáÉìDžǬǢǃÇÕÅADZÇà Q&A ÇÃç≈å„ÇÃÅuOpen
Firmware Ç…Ç®ÇØÇÈ cpus ÇégÇ¡ÇΩ Mac OS X ÇÃÉvÉçÉZÉbÉTêîÇÃê›íËÅvÇÃêflÇ≈ê‡ñæÇµÇ‹Ç∑ÅB
cpus ê›íËÇÃÉNÉäÉA
cpus ÇÕ NVRAM Ç…ê›íËÇ≥ÇÍÅAǪÇÃê›íËÇÕÅAïœçXdžÇÈÇ¢ÇÕÉNÉäÉAÇ≥ÇÍÇÈÇ‹Ç≈ÅAâΩìxçƒãNìÆÇµÇƒÇ‡à€éùÇ≥ÇÍÇ‹Ç∑ÅBcpus Çï ÇÃílÇ…ê›íËÇ∑ÇÈÇ…ÇÕÅAè„ãLÇÃéËèáÇégǢNjÇ∑ÅBcpus ê›íËÇÉNÉäÉAÇ∑ÇÈÇ…ÇÕéüÇà 3 ǬÇÃï˚ñ@ǙdžÇËÇ‹Ç∑ÅB
1. Terminal ÉAÉvÉäÉPÅ[ÉVÉáÉìÇégǡǃ boot-args ê›íËïœêîÇÉNÉäÉAǵNjÇ∑ÅBÇΩÇΔǶnjÅATerminal ÉAÉvÉäÉPÅ[ÉVÉáÉìDžǮǢǃéüÇÃÉRÉ}ÉìÉhÇì¸óÕǵNjÇ∑ÅB
% sudo nvram boot-args=""
|
DZÇÃÉRÉ}ÉìÉhÉVÅ[ÉPÉìÉXÇÕ boot-args ÇÃílÇÉNÉäÉAǵNjÇ∑ÅB
2. PRAM ÉNÉäÉAÇ…ÇÊÇË boot-args ÇÃílÇÉNÉäÉAÇ≈Ç´Ç‹Ç∑°ÉVÉXÉeÉÄÇçƒãNìÆÇµÅA2 ìxñ⁄ÇÃãNìÆÉrÅ[ÉvâπÇ™ï∑DZǶÇÈÇ‹Ç≈ Command-Option-P-R ÉLÅ[ÇâüǵÇΩNjNjDžǵNjÇ∑ÅBǪÇÃå„ÉLÅ[Çó£Ç∑ÇΔÉVÉXÉeÉÄÇÕí èÌí ÇËÇ∑Ç◊ǃÇà CPU ÇîFéØÇµÇΩèÛë‘Ç≈çƒãNìÆÇ≥ÇÍÇ‹Ç∑ÅBDZÇÃï˚ñ@ÇÃèÍçáÅAìΔé©Ç…ê›íËǵÇΩÇŸÇ©Çà NVRAM ê›íËLJÉNÉäÉAÇ≥ÇÍÇÈDZÇΔÇÕñYÇÍǻǢÇ≈Ç≠ÇæÇ≥Ç¢ÅB
3. ç≈å„Ç…ÅAÅuÉVÉXÉeÉÄä¬ã´ê›íËÅvÇëIëǵÅuãNìÆÉfÉBÉXÉNÅvÇÉNÉäÉbÉNÇ∑ÇÈDZÇΔÇ…ÇÊǡǃÅAcpus ê›íËÇÉNÉäÉAÇ≈Ç´Ç‹Ç∑ÅBǪÇÃå„ãNìÆÉfÉBÉXÉNÇï ÇÃÉ{ÉäÉÖÅ[ÉÄÇ…êÿÇËë÷ǶNjÇ∑ÅBDZÇÃï˚ñ@Ç≈ÇÕÅAboot-args ê›íËïœêîÇÃÇ∑Ç◊ǃÇÃì‡óeÇ™ÉNÉäÉAÇ≥ÇÍÇ‹Ç∑ÅBTerminal ÉAÉvÉäÉPÅ[ÉVÉáÉìÇégǡǃê›íËÇÉNÉäÉAÇ∑ÇÈèÍçáÇΔìØólÇ≈Ç∑ÅB
Open Firmware ÉÜÅ[ÉUÉCÉìÉ^ÉtÉFÅ[ÉXÇégǡǃÅANVRAM Ç…ìØÇ∂ cpus
ÇÃê›íËÇçsǧDZÇΔÇ™Ç≈Ç´Ç‹Ç∑ÅBNVRAM Ç…ê›íËÇ≥ÇÍÇΩå„ÇÕÅAǪÇÃê›íËÇÕÉVÉXÉeÉÄÇÃçƒãNìÆå„LJà€éùÇ≥ÇÍÇ‹Ç∑ÅB
Open Firmware ì‡Ç≈ cpus ÇÃílÇê›íËÇ∑ÇÈÇ…ÇÕÅAéüÇÃéËèáÇ…è]ǢNjÇ∑ÅB
éËèá 1. Open Firmware ÇÃä¬ã´Ç…ì¸ÇËÇ‹Ç∑ÅB
ÉVÉXÉeÉÄÇçƒãNìÆÇµÅAOpen Firmware ÇÃâÊñ Ç™ï\é¶Ç≥ÇÍÇÈÇ‹Ç≈ Command-Option-O-F ÇâüǵÇΩNjNjDžǵNjÇ∑ÅB
éËèá 2. boot-args ÇÃåªç›ÇÃê›íËílÇå©ÇÈÇΩÇflÇ…ÅAéüÇÃÉRÉ}ÉìÉhÇì¸óÕǵNjÇ∑ÅB
ÅiOpen Firmware ÇÃà§ópé“ÇÃíÜÇ…ÇÕÅAprintenv boot-args Ç≈LJìØÇ∂DZÇΔÇ™Ç≈Ç´ÇÈÇΔãCïtǢǃǢÇÈêlLJǢÇÈǩLJǵÇÍÇ‹ÇπÇÒÅBǵǩǵDZÇÃï˚ñ@Ç≈ÇÕ boot-args DždžÇÈäeï∂éöÇ™ÅAêlÇ™ì«ÇflÇÈÉeÉLÉXÉgï∂éöóÒÇ≈ÇÕÇ»Ç≠ 16 êiêîÇÃílÇ≈èoóÕÇ≥ÇÍǃǵNjǢNjÇ∑ÅBÅj
éËèá 3. éüÇÃÉRÉ}ÉìÉhÇì¸óÕǵNjÇ∑ÅB
DZÇÃÉRÉ}ÉìÉhçsÇ≈ÇÕÅATerminal ÉAÉvÉäÉPÅ[ÉVÉáÉìÇégÇ¡ÇΩÇΔÇ´ÇÃÇÊǧDžÅA2 èdà¯ópïÑÇÕégǢNjÇπÇÒÅB
boot-args ÇÃåªç›ÇÃílÇà€éùÇ∑ÇÈèÍçáÇÕÅAǪÇÃílÇçƒì¸óÕÇ∑ÇÈïKóvǙdžÇËÇ‹Ç∑ÅBó·Ç¶ÇŒÅAéËèá 2 ÇÃåãâ Ç™éüÇÃÇÊǧDžǻǡÇΩÇΔǵNjÇ∑ÅB
ǪÇÃèÍçáÅAÉRÉ}ÉìÉhÇéüÇÃÇÊǧDžì¸óÕǵNjÇ∑ÅB
setenv boot-args debug=0x4 cpus=1
|
éËèá 3. ok Ç™ï‘Ç≥ÇÍÇΩÇÁÅAéüÇÃÉRÉ}ÉìÉhÇì¸óÕǵǃÉuÅ[ÉgèàóùÇë±ÇØÇ‹Ç∑ÅB
ê›íËÇÉNÉäÉAÇ∑ÇÈèÍçáÇÕÅAè„ãLÅucpus ê›íËÇÃÉNÉäÉAÅvÇÃêflÇ≈ê‡ñæÇµÇΩÉIÉvÉVÉáÉìÇéQèΔǵǃÇ≠ÇæÇ≥Ç¢ÅB
éQçlï∂å£
Tech
Note 1061 Fundamentals of Open Firmware, Part I: The User
Interface, Part I in the Open Firmware Technote
Series
Tech
Note 2004 Debugging Open Firmware Using Telnet
Tech
Note 1062 Fundamentals of Open Firmware, Part II: The Device
Tree Part II in the Open Firmware Technote Series
[2002 îN 3 åé 22 ì˙]
|